package org.jiuling.wechat.officialaccount.model;

import com.alibaba.fastjson2.annotation.JSONField;
import org.jiuling.basics.converter.DateConvert;
import org.jiuling.basics.util.DateUtil;

import java.util.Date;

/**
 * 访问令牌模型
 * @author 紫灵
 * @date 2024年11月25日 01时35分18秒
 */
public class AccessTokenModel {

    /** 访问令牌 */
    @JSONField(name = "access_token")
    private String accessToken;
    /** 过期时间 */
    @JSONField(name = "expires_in")
    private Date expiresDate;

    public String getAccessToken() {
        return accessToken;
    }

    public void setAccessToken(String accessToken) {
        this.accessToken = accessToken;
    }

    public Date getExpiresDate() {
        return expiresDate;
    }

    public void setExpiresDate(Integer expiresIn) {
        // 提前10秒过期，防止过期时间的真实发生
        expiresIn = expiresIn-10;
        // 计算过期时间
        this.expiresDate = DateConvert.modifySecond(new Date(), expiresIn);
    }
}
